package com.arpa.wms.service;


import com.arpa.wms.domain.dto.MoveItemDTO;
import com.arpa.wms.domain.entity.MoveItem;
import com.arpa.wms.domain.vo.MoveItemVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 移位明细 服务类
 * </p>
 *
 * @author LEO
 * @since 2020-08-24
 */
public interface IMoveItemService extends IService<MoveItem> {

    /**
     * 保存
     * @param entity
     * @return
     */
    @Override
    boolean save(MoveItem entity);

    /**
     * 根据code更新实体
     * @param entity
     * @return
     */
    int updateByCode(MoveItem entity);

    /**
     * 查询列表
     * @param moveItemDTO
     * @return
     */
    List<MoveItemVO> queryList(MoveItemDTO moveItemDTO);

    /**
     * 查询合计,包含总数
     * @param moveItemDTO
     * @return
     */
    MoveItemVO queryListSum(MoveItemDTO moveItemDTO);

     /**
      *  @author: Allen chen
      *  @Date: 2020/11/3 17:17
      *  @Description: 根据moveCode和location 查询移位明细信息
      */
    List<MoveItemVO> queryByCondition(MoveItemDTO moveItemDTO);

    /**
     *  @author: Allen chen
     *  @Date: 2020/11/25 15:17
     *  @Description: 更新未上架的数量
     */
    int updateUnPutawayQuantity(MoveItemDTO moveItemDTO);
 /**
  *  @author: Allen chen
  *  @Date: 2020/11/25 19:32
  *  @Description: 更新已上架数量 /待上架数量，
  *  正数加已上架数量,减待上架数量;
  *  负数相反
  */
    int updateMovedQuantity(MoveItemDTO moveItemDTO);
}
